/**
 * <copyright>
 * </copyright>
 *
 */
package de.sabram.upb.specs.lido.util;

import de.sabram.upb.specs.lido.*;

import org.eclipse.emf.common.notify.Adapter;
import org.eclipse.emf.common.notify.Notifier;

import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;

import org.eclipse.emf.ecore.EObject;

/**
 * <!-- begin-user-doc -->
 * The <b>Adapter Factory</b> for the model.
 * It provides an adapter <code>createXXX</code> method for each class of the model.
 * <!-- end-user-doc -->
 * @see de.sabram.upb.specs.lido.LidoPackage
 * @generated
 */
public class LidoAdapterFactory extends AdapterFactoryImpl
{
  /**
   * The cached model package.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   */
  protected static LidoPackage modelPackage;

  /**
   * Creates an instance of the adapter factory.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   */
  public LidoAdapterFactory()
  {
    if (modelPackage == null)
    {
      modelPackage = LidoPackage.eINSTANCE;
    }
  }

  /**
   * Returns whether this factory is applicable for the type of the object.
   * <!-- begin-user-doc -->
   * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
   * <!-- end-user-doc -->
   * @return whether this factory is applicable for the type of the object.
   * @generated
   */
  @Override
  public boolean isFactoryForType(Object object)
  {
    if (object == modelPackage)
    {
      return true;
    }
    if (object instanceof EObject)
    {
      return ((EObject)object).eClass().getEPackage() == modelPackage;
    }
    return false;
  }

  /**
   * The switch that delegates to the <code>createXXX</code> methods.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   */
  protected LidoSwitch<Adapter> modelSwitch =
    new LidoSwitch<Adapter>()
    {
      @Override
      public Adapter caseAttributeGrammar(AttributeGrammar object)
      {
        return createAttributeGrammarAdapter();
      }
      @Override
      public Adapter caseSpecifications(Specifications object)
      {
        return createSpecificationsAdapter();
      }
      @Override
      public Adapter caseSpecification(Specification object)
      {
        return createSpecificationAdapter();
      }
      @Override
      public Adapter caseTermSpec(TermSpec object)
      {
        return createTermSpecAdapter();
      }
      @Override
      public Adapter caseSymAttrSpec(SymAttrSpec object)
      {
        return createSymAttrSpecAdapter();
      }
      @Override
      public Adapter caseSymbolDefIds(SymbolDefIds object)
      {
        return createSymbolDefIdsAdapter();
      }
      @Override
      public Adapter caseSymbolDefId(SymbolDefId object)
      {
        return createSymbolDefIdAdapter();
      }
      @Override
      public Adapter caseAttrDefsOpt(AttrDefsOpt object)
      {
        return createAttrDefsOptAdapter();
      }
      @Override
      public Adapter caseAttrDefs(AttrDefs object)
      {
        return createAttrDefsAdapter();
      }
      @Override
      public Adapter caseAttrDef(AttrDef object)
      {
        return createAttrDefAdapter();
      }
      @Override
      public Adapter caseAttrDefIds(AttrDefIds object)
      {
        return createAttrDefIdsAdapter();
      }
      @Override
      public Adapter caseAttrDefId(AttrDefId object)
      {
        return createAttrDefIdAdapter();
      }
      @Override
      public Adapter caseTypeId(TypeId object)
      {
        return createTypeIdAdapter();
      }
      @Override
      public Adapter caseAttrSpec(AttrSpec object)
      {
        return createAttrSpecAdapter();
      }
      @Override
      public Adapter caseAttrNames(AttrNames object)
      {
        return createAttrNamesAdapter();
      }
      @Override
      public Adapter caseAttrName(AttrName object)
      {
        return createAttrNameAdapter();
      }
      @Override
      public Adapter caseChainSpec(ChainSpec object)
      {
        return createChainSpecAdapter();
      }
      @Override
      public Adapter caseChainNames(ChainNames object)
      {
        return createChainNamesAdapter();
      }
      @Override
      public Adapter caseChainName(ChainName object)
      {
        return createChainNameAdapter();
      }
      @Override
      public Adapter caseRuleSpec(RuleSpec object)
      {
        return createRuleSpecAdapter();
      }
      @Override
      public Adapter caseRuleSpecId(RuleSpecId object)
      {
        return createRuleSpecIdAdapter();
      }
      @Override
      public Adapter caseRuleId(RuleId object)
      {
        return createRuleIdAdapter();
      }
      @Override
      public Adapter caseProduction(Production object)
      {
        return createProductionAdapter();
      }
      @Override
      public Adapter caseAlts(Alts object)
      {
        return createAltsAdapter();
      }
      @Override
      public Adapter caseAlt(Alt object)
      {
        return createAltAdapter();
      }
      @Override
      public Adapter caseSyntUnits(SyntUnits object)
      {
        return createSyntUnitsAdapter();
      }
      @Override
      public Adapter caseSyntUnit(SyntUnit object)
      {
        return createSyntUnitAdapter();
      }
      @Override
      public Adapter caseSyntLit(SyntLit object)
      {
        return createSyntLitAdapter();
      }
      @Override
      public Adapter caseSyntId(SyntId object)
      {
        return createSyntIdAdapter();
      }
      @Override
      public Adapter caseCompPart(CompPart object)
      {
        return createCompPartAdapter();
      }
      @Override
      public Adapter caseComputations(Computations object)
      {
        return createComputationsAdapter();
      }
      @Override
      public Adapter caseComputation(Computation object)
      {
        return createComputationAdapter();
      }
      @Override
      public Adapter caseCompute(Compute object)
      {
        return createComputeAdapter();
      }
      @Override
      public Adapter casePlainComp(PlainComp object)
      {
        return createPlainCompAdapter();
      }
      @Override
      public Adapter caseAttrComp(AttrComp object)
      {
        return createAttrCompAdapter();
      }
      @Override
      public Adapter caseDefAttr(DefAttr object)
      {
        return createDefAttrAdapter();
      }
      @Override
      public Adapter caseAttr(Attr object)
      {
        return createAttrAdapter();
      }
      @Override
      public Adapter caseAttrUseId(AttrUseId object)
      {
        return createAttrUseIdAdapter();
      }
      @Override
      public Adapter caseSymOcc(SymOcc object)
      {
        return createSymOccAdapter();
      }
      @Override
      public Adapter caseSymbolId(SymbolId object)
      {
        return createSymbolIdAdapter();
      }
      @Override
      public Adapter caseExpressionDep(ExpressionDep object)
      {
        return createExpressionDepAdapter();
      }
      @Override
      public Adapter caseExpression(Expression object)
      {
        return createExpressionAdapter();
      }
      @Override
      public Adapter caseSymbolRef(SymbolRef object)
      {
        return createSymbolRefAdapter();
      }
      @Override
      public Adapter caseRhsAttrs(RhsAttrs object)
      {
        return createRhsAttrsAdapter();
      }
      @Override
      public Adapter caseDepClause(DepClause object)
      {
        return createDepClauseAdapter();
      }
      @Override
      public Adapter caseDependence(Dependence object)
      {
        return createDependenceAdapter();
      }
      @Override
      public Adapter caseDepAttrs(DepAttrs object)
      {
        return createDepAttrsAdapter();
      }
      @Override
      public Adapter caseDepAttr(DepAttr object)
      {
        return createDepAttrAdapter();
      }
      @Override
      public Adapter caseParamsOpt(ParamsOpt object)
      {
        return createParamsOptAdapter();
      }
      @Override
      public Adapter caseParams(Params object)
      {
        return createParamsAdapter();
      }
      @Override
      public Adapter caseParam(Param object)
      {
        return createParamAdapter();
      }
      @Override
      public Adapter caseLoop(Loop object)
      {
        return createLoopAdapter();
      }
      @Override
      public Adapter caseRemoteExpression(RemoteExpression object)
      {
        return createRemoteExpressionAdapter();
      }
      @Override
      public Adapter caseRemoteClause(RemoteClause object)
      {
        return createRemoteClauseAdapter();
      }
      @Override
      public Adapter caseRemoteAttrs(RemoteAttrs object)
      {
        return createRemoteAttrsAdapter();
      }
      @Override
      public Adapter caseRemoteAttr(RemoteAttr object)
      {
        return createRemoteAttrAdapter();
      }
      @Override
      public Adapter caseExpandOpt(ExpandOpt object)
      {
        return createExpandOptAdapter();
      }
      @Override
      public Adapter caseSubtree(Subtree object)
      {
        return createSubtreeAdapter();
      }
      @Override
      public Adapter caseShield(Shield object)
      {
        return createShieldAdapter();
      }
      @Override
      public Adapter caseShieldClause(ShieldClause object)
      {
        return createShieldClauseAdapter();
      }
      @Override
      public Adapter caseShieldSyms(ShieldSyms object)
      {
        return createShieldSymsAdapter();
      }
      @Override
      public Adapter caseShieldSym(ShieldSym object)
      {
        return createShieldSymAdapter();
      }
      @Override
      public Adapter caseSymCompSpec(SymCompSpec object)
      {
        return createSymCompSpecAdapter();
      }
      @Override
      public Adapter caseInheritOpt(InheritOpt object)
      {
        return createInheritOptAdapter();
      }
      @Override
      public Adapter caseInheritSyms(InheritSyms object)
      {
        return createInheritSymsAdapter();
      }
      @Override
      public Adapter caseInheritSym(InheritSym object)
      {
        return createInheritSymAdapter();
      }
      @Override
      public Adapter defaultCase(EObject object)
      {
        return createEObjectAdapter();
      }
    };

  /**
   * Creates an adapter for the <code>target</code>.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @param target the object to adapt.
   * @return the adapter for the <code>target</code>.
   * @generated
   */
  @Override
  public Adapter createAdapter(Notifier target)
  {
    return modelSwitch.doSwitch((EObject)target);
  }


  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.AttributeGrammar <em>Attribute Grammar</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.AttributeGrammar
   * @generated
   */
  public Adapter createAttributeGrammarAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.Specifications <em>Specifications</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.Specifications
   * @generated
   */
  public Adapter createSpecificationsAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.Specification <em>Specification</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.Specification
   * @generated
   */
  public Adapter createSpecificationAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.TermSpec <em>Term Spec</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.TermSpec
   * @generated
   */
  public Adapter createTermSpecAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.SymAttrSpec <em>Sym Attr Spec</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.SymAttrSpec
   * @generated
   */
  public Adapter createSymAttrSpecAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.SymbolDefIds <em>Symbol Def Ids</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.SymbolDefIds
   * @generated
   */
  public Adapter createSymbolDefIdsAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.SymbolDefId <em>Symbol Def Id</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.SymbolDefId
   * @generated
   */
  public Adapter createSymbolDefIdAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.AttrDefsOpt <em>Attr Defs Opt</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.AttrDefsOpt
   * @generated
   */
  public Adapter createAttrDefsOptAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.AttrDefs <em>Attr Defs</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.AttrDefs
   * @generated
   */
  public Adapter createAttrDefsAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.AttrDef <em>Attr Def</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.AttrDef
   * @generated
   */
  public Adapter createAttrDefAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.AttrDefIds <em>Attr Def Ids</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.AttrDefIds
   * @generated
   */
  public Adapter createAttrDefIdsAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.AttrDefId <em>Attr Def Id</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.AttrDefId
   * @generated
   */
  public Adapter createAttrDefIdAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.TypeId <em>Type Id</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.TypeId
   * @generated
   */
  public Adapter createTypeIdAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.AttrSpec <em>Attr Spec</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.AttrSpec
   * @generated
   */
  public Adapter createAttrSpecAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.AttrNames <em>Attr Names</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.AttrNames
   * @generated
   */
  public Adapter createAttrNamesAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.AttrName <em>Attr Name</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.AttrName
   * @generated
   */
  public Adapter createAttrNameAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.ChainSpec <em>Chain Spec</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.ChainSpec
   * @generated
   */
  public Adapter createChainSpecAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.ChainNames <em>Chain Names</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.ChainNames
   * @generated
   */
  public Adapter createChainNamesAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.ChainName <em>Chain Name</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.ChainName
   * @generated
   */
  public Adapter createChainNameAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.RuleSpec <em>Rule Spec</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.RuleSpec
   * @generated
   */
  public Adapter createRuleSpecAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.RuleSpecId <em>Rule Spec Id</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.RuleSpecId
   * @generated
   */
  public Adapter createRuleSpecIdAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.RuleId <em>Rule Id</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.RuleId
   * @generated
   */
  public Adapter createRuleIdAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.Production <em>Production</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.Production
   * @generated
   */
  public Adapter createProductionAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.Alts <em>Alts</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.Alts
   * @generated
   */
  public Adapter createAltsAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.Alt <em>Alt</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.Alt
   * @generated
   */
  public Adapter createAltAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.SyntUnits <em>Synt Units</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.SyntUnits
   * @generated
   */
  public Adapter createSyntUnitsAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.SyntUnit <em>Synt Unit</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.SyntUnit
   * @generated
   */
  public Adapter createSyntUnitAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.SyntLit <em>Synt Lit</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.SyntLit
   * @generated
   */
  public Adapter createSyntLitAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.SyntId <em>Synt Id</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.SyntId
   * @generated
   */
  public Adapter createSyntIdAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.CompPart <em>Comp Part</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.CompPart
   * @generated
   */
  public Adapter createCompPartAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.Computations <em>Computations</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.Computations
   * @generated
   */
  public Adapter createComputationsAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.Computation <em>Computation</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.Computation
   * @generated
   */
  public Adapter createComputationAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.Compute <em>Compute</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.Compute
   * @generated
   */
  public Adapter createComputeAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.PlainComp <em>Plain Comp</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.PlainComp
   * @generated
   */
  public Adapter createPlainCompAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.AttrComp <em>Attr Comp</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.AttrComp
   * @generated
   */
  public Adapter createAttrCompAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.DefAttr <em>Def Attr</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.DefAttr
   * @generated
   */
  public Adapter createDefAttrAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.Attr <em>Attr</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.Attr
   * @generated
   */
  public Adapter createAttrAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.AttrUseId <em>Attr Use Id</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.AttrUseId
   * @generated
   */
  public Adapter createAttrUseIdAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.SymOcc <em>Sym Occ</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.SymOcc
   * @generated
   */
  public Adapter createSymOccAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.SymbolId <em>Symbol Id</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.SymbolId
   * @generated
   */
  public Adapter createSymbolIdAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.ExpressionDep <em>Expression Dep</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.ExpressionDep
   * @generated
   */
  public Adapter createExpressionDepAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.Expression <em>Expression</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.Expression
   * @generated
   */
  public Adapter createExpressionAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.SymbolRef <em>Symbol Ref</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.SymbolRef
   * @generated
   */
  public Adapter createSymbolRefAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.RhsAttrs <em>Rhs Attrs</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.RhsAttrs
   * @generated
   */
  public Adapter createRhsAttrsAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.DepClause <em>Dep Clause</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.DepClause
   * @generated
   */
  public Adapter createDepClauseAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.Dependence <em>Dependence</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.Dependence
   * @generated
   */
  public Adapter createDependenceAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.DepAttrs <em>Dep Attrs</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.DepAttrs
   * @generated
   */
  public Adapter createDepAttrsAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.DepAttr <em>Dep Attr</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.DepAttr
   * @generated
   */
  public Adapter createDepAttrAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.ParamsOpt <em>Params Opt</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.ParamsOpt
   * @generated
   */
  public Adapter createParamsOptAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.Params <em>Params</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.Params
   * @generated
   */
  public Adapter createParamsAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.Param <em>Param</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.Param
   * @generated
   */
  public Adapter createParamAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.Loop <em>Loop</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.Loop
   * @generated
   */
  public Adapter createLoopAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.RemoteExpression <em>Remote Expression</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.RemoteExpression
   * @generated
   */
  public Adapter createRemoteExpressionAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.RemoteClause <em>Remote Clause</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.RemoteClause
   * @generated
   */
  public Adapter createRemoteClauseAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.RemoteAttrs <em>Remote Attrs</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.RemoteAttrs
   * @generated
   */
  public Adapter createRemoteAttrsAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.RemoteAttr <em>Remote Attr</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.RemoteAttr
   * @generated
   */
  public Adapter createRemoteAttrAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.ExpandOpt <em>Expand Opt</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.ExpandOpt
   * @generated
   */
  public Adapter createExpandOptAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.Subtree <em>Subtree</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.Subtree
   * @generated
   */
  public Adapter createSubtreeAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.Shield <em>Shield</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.Shield
   * @generated
   */
  public Adapter createShieldAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.ShieldClause <em>Shield Clause</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.ShieldClause
   * @generated
   */
  public Adapter createShieldClauseAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.ShieldSyms <em>Shield Syms</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.ShieldSyms
   * @generated
   */
  public Adapter createShieldSymsAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.ShieldSym <em>Shield Sym</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.ShieldSym
   * @generated
   */
  public Adapter createShieldSymAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.SymCompSpec <em>Sym Comp Spec</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.SymCompSpec
   * @generated
   */
  public Adapter createSymCompSpecAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.InheritOpt <em>Inherit Opt</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.InheritOpt
   * @generated
   */
  public Adapter createInheritOptAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.InheritSyms <em>Inherit Syms</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.InheritSyms
   * @generated
   */
  public Adapter createInheritSymsAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for an object of class '{@link de.sabram.upb.specs.lido.InheritSym <em>Inherit Sym</em>}'.
   * <!-- begin-user-doc -->
   * This default implementation returns null so that we can easily ignore cases;
   * it's useful to ignore a case when inheritance will catch all the cases anyway.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @see de.sabram.upb.specs.lido.InheritSym
   * @generated
   */
  public Adapter createInheritSymAdapter()
  {
    return null;
  }

  /**
   * Creates a new adapter for the default case.
   * <!-- begin-user-doc -->
   * This default implementation returns null.
   * <!-- end-user-doc -->
   * @return the new adapter.
   * @generated
   */
  public Adapter createEObjectAdapter()
  {
    return null;
  }

} //LidoAdapterFactory
